const fs = require('fs')

const args = {
	'-h': displayHelp,
	'-r': readFile,
}

function displayHelp() {
	console.log('Argument processor', args)
}

function readFile(file) {
	console.log('reading,', file)
	fs.createReadStream(file).pipe(process.stdout)
}

/**
 * 执行脚本 node .\arguments.js -r .\arguments.js
 *
 * 	核心思想就是 使用 process.argv 是可以获取到 命令行的一些参数的
 *
 */

if (process.argv.length > 0) {
	process.argv.forEach(function (arg, index) {
		console.log('arg', process.argv, arg, index)
		if (arg === '-r') {
			// 通过打印arg 可以知道 -r 后面跟的就是我们传的参数 在这里也就是  .\arguments.js 这个文件名称 这个参数
			args[arg].apply(this, process.argv.slice(index + 1))
		}
	})
}
